<html>
<head><meta charset="utf-8"><title>Require users to confirm they know RUSTC_… compiler-team#350 · t-compiler/major changes · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/index.html">t-compiler/major changes</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html">Require users to confirm they know RUSTC_… compiler-team#350</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="208059954"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208059954" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208059954">(Aug 26 2020 at 07:24)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F/near/208037590">said</a>:</p>
<blockquote>
<blockquote>
<p>you could use a stable compiler to compile unstable features</p>
</blockquote>
<p>yes, using <code>RUSTC_BOOTSTRAP=1</code></p>
</blockquote>
<p>also please never use that env var unless you want to make rust devs really sad^^. it's for internal use only.</p>



<a name="208060387"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208060387" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lzutao <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208060387">(Aug 26 2020 at 07:30)</a>:</h4>
<p>:) let people use it and make them all unhappy in a day.</p>



<a name="208110235"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208110235" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208110235">(Aug 26 2020 at 15:50)</a>:</h4>
<p>once upon a time, it required <code>RUSTC_BOOTSTRAP=&lt;some-hashed-value&gt;</code></p>



<a name="208110257"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208110257" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208110257">(Aug 26 2020 at 15:50)</a>:</h4>
<p>but we decided that obfuscation wasn't really worth it</p>



<a name="208110285"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208110285" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208110285">(Aug 26 2020 at 15:51)</a>:</h4>
<p>And then we discussed some weird crypto-y thing</p>



<a name="208112292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112292">(Aug 26 2020 at 16:06)</a>:</h4>
<p>I've always liked the more human approach to such things: <code>RUSTC_BOOTSTRAP="I understand that unstable features are unstable and may break at any time"</code>.</p>



<a name="208112457"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112457" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112457">(Aug 26 2020 at 16:08)</a>:</h4>
<p>ooh I like that</p>



<a name="208112471"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112471" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112471">(Aug 26 2020 at 16:08)</a>:</h4>
<p>then you don't get people copy/pasting from reddit because they saw that it works</p>



<a name="208112538"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112538" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112538">(Aug 26 2020 at 16:08)</a>:</h4>
<p>Exactly.</p>



<a name="208112585"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112585" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112585">(Aug 26 2020 at 16:09)</a>:</h4>
<p>(also, if we were to change it, we could also change the name of the environment variable to something more clear)</p>



<a name="208112754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112754">(Aug 26 2020 at 16:10)</a>:</h4>
<p>The first time I saw this approach was in Debian's apt package manager, if you try to remove an essential package. It prints an explanatory paragraph, and then asks you to type "Yes, do as I say!".</p>



<a name="208112802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112802">(Aug 26 2020 at 16:11)</a>:</h4>
<p>Which makes someone stop long enough to read the paragraph, rather than just reflexively hitting y and pressing enter.</p>



<a name="208112839"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112839" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112839">(Aug 26 2020 at 16:11)</a>:</h4>
<p>Likewise, GitHub makes you type the full name of a repository in order to delete it.</p>



<a name="208112844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208112844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208112844">(Aug 26 2020 at 16:11)</a>:</h4>
<p>I think there's value in that.</p>



<a name="208113085"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208113085" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Eh2406 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208113085">(Aug 26 2020 at 16:13)</a>:</h4>
<p>(I always just copy and paste the repository name.)</p>



<a name="208114183"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208114183" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208114183">(Aug 26 2020 at 16:22)</a>:</h4>
<p>same</p>



<a name="208116221"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208116221" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208116221">(Aug 26 2020 at 16:39)</a>:</h4>
<p>That still takes enough time that you're no longer just reacting to a dialog "getting in your way".</p>



<a name="208135432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208135432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208135432">(Aug 26 2020 at 19:16)</a>:</h4>
<p>/me would second this if someone wanted to propose changing it. :)</p>



<a name="208135496"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208135496" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208135496">(Aug 26 2020 at 19:16)</a>:</h4>
<p>sounds good to me, it only needs an MCP, right? because it's explicitly not stable?</p>



<a name="208135506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208135506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208135506">(Aug 26 2020 at 19:16)</a>:</h4>
<p>would that be T-compiler?</p>



<a name="208138377"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208138377" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208138377">(Aug 26 2020 at 19:41)</a>:</h4>
<p>I the same vein: <code>I_KNOW_I_AM_USING_AN_OLD_AND_BUGGY_VERSION_OF_LIBXML2</code></p>



<a name="208141991"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208141991" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208141991">(Aug 26 2020 at 20:09)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> yeah an MCP should be fine</p>



<a name="208142871"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208142871" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208142871">(Aug 26 2020 at 20:16)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> <a href="#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F/near/208112585">said</a>:</p>
<blockquote>
<p>(also, if we were to change it, we could also change the name of the environment variable to something more clear)</p>
</blockquote>
<p>do you have a preferred name?</p>



<a name="208142919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208142919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208142919">(Aug 26 2020 at 20:17)</a>:</h4>
<p>maybe <code>ALLOW_UNSTABLE_ON_STABLE</code>?</p>



<a name="208142970"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208142970" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208142970">(Aug 26 2020 at 20:17)</a>:</h4>
<p><code>I_OPT_OUT_OF_RUST_STABILITY_GUARANTEES_AND_CANNOT_COMPLAIN_ABOUT_IT</code></p>



<a name="208142995"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208142995" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208142995">(Aug 26 2020 at 20:17)</a>:</h4>
<p>^</p>



<a name="208143071"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143071" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143071">(Aug 26 2020 at 20:18)</a>:</h4>
<p>in addition to the text you have to set it to? or instead of? it seems it's getting pretty long <span aria-label="laughing" class="emoji emoji-1f606" role="img" title="laughing">:laughing:</span></p>



<a name="208143106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143106">(Aug 26 2020 at 20:18)</a>:</h4>
<p>no you just set it to 42</p>



<a name="208143121"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143121" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143121">(Aug 26 2020 at 20:18)</a>:</h4>
<p>I'd say set vs unset</p>



<a name="208143142"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143142" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143142">(Aug 26 2020 at 20:19)</a>:</h4>
<p>but also <code>I_OPT_OUT_OF_RUST_STABILITY_GUARANTEES=AND_CANNOT_COMPLAIN_ABOUT_IT</code> is possible</p>



<a name="208143183"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143183" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143183">(Aug 26 2020 at 20:19)</a>:</h4>
<p>personally I like <code>ALLOW_UNSTABLE_ON_STABLE="I understand that unstable features are unstable and may break at any time"</code>, but I'm ok with <code>I_OPT_OUT_OF_RUST_STABILITY_GUARANTEES_AND_UNDERSTAND_UNSTABLE_FEATURES_ARE_UNSTABLE</code></p>



<a name="208143274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143274">(Aug 26 2020 at 20:20)</a>:</h4>
<p>I've named a crate feature <code>unsafe_i_promise_to_not_run_this_on_the_wrong_platform</code></p>



<a name="208143334"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143334" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143334">(Aug 26 2020 at 20:20)</a>:</h4>
<p>This is cute and all, but is there really any problem currently, that justifies changing this?</p>



<a name="208143398"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143398" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143398">(Aug 26 2020 at 20:21)</a>:</h4>
<p><span class="user-mention silent" data-user-id="138448">cuviper</span> <a href="#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F/near/208143334">said</a>:</p>
<blockquote>
<p>This is cute and all, but is there really any problem currently, that justifies changing this?</p>
</blockquote>
<p>yes, I ran into someone a couple weeks ago who tried to use this</p>



<a name="208143411"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143411" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143411">(Aug 26 2020 at 20:21)</a>:</h4>
<p>and just didn't understand why it was bad</p>



<a name="208143415"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143415" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143415">(Aug 26 2020 at 20:21)</a>:</h4>
<p>one sec, let me find a link</p>



<a name="208143432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143432">(Aug 26 2020 at 20:21)</a>:</h4>
<p>IMO making it super long and unwieldy is unhelpful</p>



<a name="208143466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143466">(Aug 26 2020 at 20:21)</a>:</h4>
<p>Calling it RUSTC_FORCE_UNSTABLE, though, seems fine</p>



<a name="208143539"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143539" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143539">(Aug 26 2020 at 20:22)</a>:</h4>
<p>the longer it is the harder it is to one-off use it in testing and such, and imo a long name doesn't buy you much</p>



<a name="208143565"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143565" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143565">(Aug 26 2020 at 20:22)</a>:</h4>
<p>rustc_unstable_on_stable is probably the clearest name so far</p>



<a name="208143595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143595">(Aug 26 2020 at 20:22)</a>:</h4>
<p>see around <a href="https://discordapp.com/channels/273534239310479360/274215136414400513/746403450669105254">https://discordapp.com/channels/273534239310479360/274215136414400513/746403450669105254</a></p>



<a name="208143674"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143674" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143674">(Aug 26 2020 at 20:23)</a>:</h4>
<blockquote>
<p>johndoe: is there a way to get a nightly build from the same commit as the latest stable? I want to use unstable features but (a) I don't want to get any regressions introduced in stable..nightly and (b) nightly is often missing components.<br>
koxiaet: You can set the RUSTC_BOOTSTRAP env variable I think<br>
johndoe: I'll try RUSTC_BOOTSTRAP</p>
</blockquote>



<a name="208143695"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143695" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143695">(Aug 26 2020 at 20:23)</a>:</h4>
<p>I don't think we need to say "unstable on stable", just "unstable" seems enough to me. BOOTSTRAP is confusing because it has nothing to do with the flag's actual effect</p>



<a name="208143708"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143708" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143708">(Aug 26 2020 at 20:23)</a>:</h4>
<p>and the real concern I have with this is that a) someone suggested it and b) the beginner accepted it without knowing it was bad</p>



<a name="208143778"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143778" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143778">(Aug 26 2020 at 20:24)</a>:</h4>
<p>I mean at some point that's just ... the reality of help</p>



<a name="208143801"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143801" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143801">(Aug 26 2020 at 20:24)</a>:</h4>
<p>but sure, renaming to RUSTC_UNSTABLE or whatever seems not unreasaonble</p>



<a name="208143848"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208143848" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208143848">(Aug 26 2020 at 20:24)</a>:</h4>
<p>right, we can't fix a), but I think this would help with b)</p>



<a name="208144234"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208144234" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208144234">(Aug 26 2020 at 20:28)</a>:</h4>
<p><code>UNSTABLE</code> indicates the effect, <code>BOOTSTRAP</code> the intended use case</p>



<a name="208144248"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208144248" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208144248">(Aug 26 2020 at 20:28)</a>:</h4>
<p>That change seems reasonable</p>



<a name="208144461"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208144461" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208144461">(Aug 26 2020 at 20:30)</a>:</h4>
<p>A new proposal has been announced: <a href="https://github.com/rust-lang/compiler-team/issues/350">Require users to confirm they know RUSTC_BOOTSTRAP is unsupported before using it #350</a>. It will be announced at the next meeting to try and draw attention to it, but usually MCPs are not discussed during triage meetings. If you think this would benefit from discussion amongst the team, consider proposing a design meeting.</p>



<a name="208144492"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208144492" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208144492">(Aug 26 2020 at 20:30)</a>:</h4>
<p><a href="https://github.com/rust-lang/compiler-team/issues/350">https://github.com/rust-lang/compiler-team/issues/350</a>, <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350">https://rust-lang.zulipchat.com/#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350</a></p>



<a name="208144667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208144667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208144667">(Aug 26 2020 at 20:32)</a>:</h4>
<p>previous discussion: <a href="#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F/near/208059954">https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F/near/208059954</a></p>



<a name="208145028"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145028" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145028">(Aug 26 2020 at 20:35)</a>:</h4>
<p>If I remember correctly we used to, in the far past, have a specific passcode that you needed to supply to RUSTC_BOOTSTRAP</p>



<a name="208145045"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145045" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145045">(Aug 26 2020 at 20:35)</a>:</h4>
<p>and it would change every release.</p>



<a name="208145077"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145077" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145077">(Aug 26 2020 at 20:35)</a>:</h4>
<p>I'm going to move this discussion into the MCP stream</p>



<a name="208145168"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145168" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145168">(Aug 26 2020 at 20:36)</a>:</h4>
<p>Can we add a zero-width whitespace character in either the name or the value? That would make it much harder to type in a regular shell. Putting it in the name would probably be the harder option, as the value may have a way to escape arbitrary bytes.</p>



<a name="208145181"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145181" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Notification Bot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145181">(Aug 26 2020 at 20:36)</a>:</h4>
<p>This topic was moved here from <a class="stream-topic" data-stream-id="122651" href="/#narrow/stream/122651-general/topic/how.20does.20release.20branching.20work.3F">#general &gt; how does release branching work?</a> by <span class="user-mention silent" data-user-id="116122">simulacrum</span></p>



<a name="208145211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145211">(Aug 26 2020 at 20:36)</a>:</h4>
<blockquote>
<p>That would make it much harder to type in a regular shell. </p>
</blockquote>
<p>I don't think that's really the point of the change</p>



<a name="208145219"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145219" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145219">(Aug 26 2020 at 20:36)</a>:</h4>
<p>I am strongly opposed to making this hard to type</p>



<a name="208145246"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145246" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145246">(Aug 26 2020 at 20:36)</a>:</h4>
<p>we're not trying to make it <em>difficult</em>, we're trying to make it a conscious decision</p>



<a name="208145506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145506">(Aug 26 2020 at 20:39)</a>:</h4>
<blockquote>
<p>johndoe: is there a way to get a nightly build from the same commit as the latest stable? I want to use unstable features [...]</p>
</blockquote>
<p>it sounds like this user would be perfectly happy to use it by another name anyway</p>



<a name="208145534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145534">(Aug 26 2020 at 20:39)</a>:</h4>
<p>what I ended up suggesting was pinning a nightly</p>



<a name="208145538"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145538" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145538">(Aug 26 2020 at 20:39)</a>:</h4>
<p>and they were happy with that</p>



<a name="208145722"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208145722" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208145722">(Aug 26 2020 at 20:41)</a>:</h4>
<p>which is sort of what bootstrap uses it for too, except built in beta mode to catch things like <a href="https://github.com/rust-lang/rust/issues/75951">https://github.com/rust-lang/rust/issues/75951</a></p>



<a name="208147789"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208147789" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208147789">(Aug 26 2020 at 20:58)</a>:</h4>
<p><code>RUSTC_BOOTSTRAP</code> is pretty useful for testing / debugging, even if it never goes to anything "release".</p>



<a name="208147910"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208147910" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208147910">(Aug 26 2020 at 20:59)</a>:</h4>
<p>It shouldn't be made harder to use.</p>



<a name="208148013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148013">(Aug 26 2020 at 21:00)</a>:</h4>
<p>the intention isn't to make it harder, but to make it more clear that it's not supported by the release team</p>



<a name="208148426"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148426" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148426">(Aug 26 2020 at 21:03)</a>:</h4>
<p>Meh.<br>
Renaming will only be a nuisance, isn't worth the bikeshedding and script-updating efforts.</p>



<a name="208148552"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148552" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148552">(Aug 26 2020 at 21:04)</a>:</h4>
<p>I think if we do rename we'll keep both for at least a year or whatever</p>



<a name="208148574"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148574" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148574">(Aug 26 2020 at 21:04)</a>:</h4>
<p>but I agree that I am uncertain about cost benefit here</p>



<a name="208148600"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148600" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148600">(Aug 26 2020 at 21:05)</a>:</h4>
<p>I think it is worthwhile to dig up the original discussion that ultimately led us to making <code>RUSTC_BOOTSTRAP=1</code> as simple as it is today.</p>



<a name="208148753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148753">(Aug 26 2020 at 21:06)</a>:</h4>
<p>I’m sure we were aware at the time of the fact that people will write these down in forums and possibly use them in a way we would rather them not to.</p>



<a name="208148869"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148869" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scottmcm <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148869">(Aug 26 2020 at 21:07)</a>:</h4>
<p>tossing things out there: <code>RUSTC_BOOTSTRAP=1</code> could continue to work, but print a warning, which could either be suppressed normally or by setting <code>RUSTC_BOOTSTRAP="I understand I'm opting out of stability"</code>.</p>



<a name="208148940"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148940" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148940">(Aug 26 2020 at 21:07)</a>:</h4>
<p>I think I like that better actually</p>



<a name="208148966"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208148966" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208148966">(Aug 26 2020 at 21:07)</a>:</h4>
<p>and maybe a link to <em>why</em> it's not recommended</p>



<a name="208149128"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149128" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149128">(Aug 26 2020 at 21:09)</a>:</h4>
<p>Again, I don't want something longer than what we have today -- it's not worth the pain of typing it and piping it through tools</p>



<a name="208149227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149227">(Aug 26 2020 at 21:10)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208149128">said</a>:</p>
<blockquote>
<p>Again, I don't want something longer than what we have today -- it's not worth the pain of typing it and piping it through tools</p>
</blockquote>
<p>tools could still use <code>RUSTC_BOOTSTRAP=1</code>, just with a warning</p>



<a name="208149263"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149263" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149263">(Aug 26 2020 at 21:10)</a>:</h4>
<p>I don't want different behavior when using this flag</p>



<a name="208149265"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149265" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scottmcm <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149265">(Aug 26 2020 at 21:10)</a>:</h4>
<p>(Suggestion inspired by the "Knock yourself out." banner on MIR output)</p>



<a name="208149283"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149283" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149283">(Aug 26 2020 at 21:10)</a>:</h4>
<p>like, I'm fine with RUSTC_BOOTSTRAP=111 or something</p>



<a name="208149290"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149290" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149290">(Aug 26 2020 at 21:10)</a>:</h4>
<p>it just shouldn't have spaces</p>



<a name="208149382"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208149382" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208149382">(Aug 26 2020 at 21:11)</a>:</h4>
<p>ok, that works</p>



<a name="208152255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208152255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208152255">(Aug 26 2020 at 21:37)</a>:</h4>
<p>Throwing this out there: <code>RUSTC_UNSAFE_BOOTSTRAP</code></p>



<a name="208152464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208152464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208152464">(Aug 26 2020 at 21:39)</a>:</h4>
<p><span class="user-mention silent" data-user-id="307537">Camelid</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208152255">said</a>:</p>
<blockquote>
<p>Throwing this out there: <code>RUSTC_UNSAFE_BOOTSTRAP</code></p>
</blockquote>
<p>that still doesn't say what it's <em>doing</em> though</p>



<a name="208152488"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208152488" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208152488">(Aug 26 2020 at 21:39)</a>:</h4>
<p>which is allowing you to use unstable features on stable</p>



<a name="208155199"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155199" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Eric Huss <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155199">(Aug 26 2020 at 22:06)</a>:</h4>
<p><span class="user-mention silent" data-user-id="123586">nagisa</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208148600">said</a>:</p>
<blockquote>
<p>I think it is worthwhile to dig up the original discussion</p>
</blockquote>
<p><a href="https://github.com/rust-lang/rust/issues/36548">https://github.com/rust-lang/rust/issues/36548</a></p>



<a name="208155449"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155449" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155449">(Aug 26 2020 at 22:09)</a>:</h4>
<p><span class="user-mention silent" data-user-id="125270">scottmcm</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208148869">said</a>:</p>
<blockquote>
<p>tossing things out there: <code>RUSTC_BOOTSTRAP=1</code> could continue to work, but print a warning, which could either be suppressed normally or by setting <code>RUSTC_BOOTSTRAP="I understand I'm opting out of stability"</code>.</p>
</blockquote>
<p>I'm all for that. We can print a detailed message that explains what you're getting yourself into.</p>



<a name="208155555"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155555" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155555">(Aug 26 2020 at 22:10)</a>:</h4>
<p>This is not a way to make it more difficult, or a way to shame people.</p>



<a name="208155591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155591">(Aug 26 2020 at 22:10)</a>:</h4>
<p>The <em>only</em> purpose of this is to make sure that nobody uses this <em>without</em> knowing what they're getting themselves into.</p>



<a name="208155614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155614">(Aug 26 2020 at 22:11)</a>:</h4>
<p>If someone <em>does</em> know what they're getting themselves into, so be it.</p>



<a name="208155720"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208155720" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208155720">(Aug 26 2020 at 22:12)</a>:</h4>
<p>I want to see the "oooh, a shiny option to let me do what I want!" reaction slowed down a little bit, long enough for people to think about the implications.</p>



<a name="208156165"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156165" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156165">(Aug 26 2020 at 22:17)</a>:</h4>
<p>Oh, minor nit: It should be <code>RUSTC_UNSTABLE="I understand I am opting out of stability"</code>, not <code>I'm</code>, because let's not make people deal with quoting issues. ;)</p>



<a name="208156253"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156253" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156253">(Aug 26 2020 at 22:18)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> fyi <span class="user-mention silent" data-user-id="116122">simulacrum</span> was not comfortable putting spaces in the required text: <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208149128">https://rust-lang.zulipchat.com/#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208149128</a></p>



<a name="208156552"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156552" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156552">(Aug 26 2020 at 22:21)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> <span class="user-mention" data-user-id="116122">@simulacrum</span> Ah, fair enough. I'm fine with modifying the text in question to eliminate the spaces.</p>



<a name="208156651"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156651" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156651">(Aug 26 2020 at 22:22)</a>:</h4>
<p>Yeah spaces are bad for the same reason quote characters are bad</p>



<a name="208156668"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156668" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156668">(Aug 26 2020 at 22:23)</a>:</h4>
<p>I would prefer something short but clear</p>



<a name="208156694"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208156694" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208156694">(Aug 26 2020 at 22:23)</a>:</h4>
<p>(even something long is a bit annoying to remember the exact invocation of)</p>



<a name="208157018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208157018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208157018">(Aug 26 2020 at 22:26)</a>:</h4>
<p><code>RUSTC_UNSTABLE=NO_STABILITY_GUARANTEES</code> ?</p>



<a name="208162596"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208162596" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208162596">(Aug 26 2020 at 23:32)</a>:</h4>
<p>a bit on the long side, imo</p>



<a name="208162620"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208162620" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208162620">(Aug 26 2020 at 23:32)</a>:</h4>
<p>otoh, we could document and try to push people towards using that but also support, say, RUSTC_UNSTABLE=1</p>



<a name="208166287"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208166287" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208166287">(Aug 27 2020 at 00:27)</a>:</h4>
<p>If we do that then people end up copy/pasting <code>RUSTC_UNSTABLE=1</code> <span aria-label="shrug" class="emoji emoji-1f937" role="img" title="shrug">:shrug:</span> we do get the benefit that the name makes more sense but I think it doesn't got across that's it's unsupported</p>



<a name="208168960"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208168960" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208168960">(Aug 27 2020 at 01:12)</a>:</h4>
<p>I personally do not really want to type NO_STABILITY_GUARANTEES every time I use this, and I don't know that the cost of misuse is <em>that</em> high</p>



<a name="208168981"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208168981" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208168981">(Aug 27 2020 at 01:12)</a>:</h4>
<p>Maybe we could do RUSTC_CHANNEL=nightly?</p>



<a name="208168993"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208168993" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208168993">(Aug 27 2020 at 01:13)</a>:</h4>
<p>that would sort of communicate you are switching to unstable channel</p>



<a name="208169216"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208169216" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208169216">(Aug 27 2020 at 01:16)</a>:</h4>
<p>I'd be ok with that</p>



<a name="208169406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208169406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208169406">(Aug 27 2020 at 01:20)</a>:</h4>
<p>That seems good. <code>{RUSTC_,}FORCE_CHANNEL</code> is another option.</p>



<a name="208169810"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208169810" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208169810">(Aug 27 2020 at 01:28)</a>:</h4>
<p>and channel=nightly would make any compiler suddenly act like it was Nightly?</p>



<a name="208171496"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208171496" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Noah Lev <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208171496">(Aug 27 2020 at 01:59)</a>:</h4>
<p>Although <code>RUSTC_CHANNEL=nightly</code> seems like people would think that's how you use nightly features when usually you should use <code>rustup</code> to get a nightly toolchain. Maybe <code>RUSTC_FEATURES=unstable</code>?</p>



<a name="208173726"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173726" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173726">(Aug 27 2020 at 02:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> How often do you type that by hand?</p>



<a name="208173760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173760">(Aug 27 2020 at 02:55)</a>:</h4>
<p>Probably roughly once a week? It's not terrible if it's long, I guess. We could also consider a sudo-like solution where you can add a .rustc-expert file in your home directory or so to let you use a shorter form</p>



<a name="208173768"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173768" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173768">(Aug 27 2020 at 02:55)</a>:</h4>
<p>I mainly want to be able to remember it</p>



<a name="208173814"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173814" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173814">(Aug 27 2020 at 02:56)</a>:</h4>
<p>(e.g., the cargo fingerprint logging i can never remember)</p>



<a name="208173820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173820">(Aug 27 2020 at 02:56)</a>:</h4>
<p>Mind if I ask what leads you to use it?</p>



<a name="208173834"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173834" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173834">(Aug 27 2020 at 02:57)</a>:</h4>
<p>And to need to use it by hand rather than from a script?</p>



<a name="208173914"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173914" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173914">(Aug 27 2020 at 02:58)</a>:</h4>
<p>Hm, I think it's mostly "invoking older compilers with -Z flags", usually for checking performance/assembly output, or simple bisection</p>



<a name="208173924"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173924" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173924">(Aug 27 2020 at 02:59)</a>:</h4>
<p>If we have something long I'd probably have a rustc-unstable script</p>



<a name="208173991"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208173991" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208173991">(Aug 27 2020 at 03:00)</a>:</h4>
<p>I would still be opposed to spaces or quotes to make it more likely that copy pasting it from e.g. failed rustc invocations just works</p>



<a name="208174003"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208174003" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208174003">(Aug 27 2020 at 03:00)</a>:</h4>
<p>(Or will work once we print env variables there, I don't think we do today)</p>



<a name="208174088"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208174088" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208174088">(Aug 27 2020 at 03:02)</a>:</h4>
<p>I also want to be able to give it to people when necessary without hunting down an invocation to copy paste, though I don't do that at all frequently</p>



<a name="208185897"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208185897" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208185897">(Aug 27 2020 at 07:34)</a>:</h4>
<p>For people that use this regularly, another IMO reasonable option is to just write a simple shell wrapper that sets the env var</p>



<a name="208185927"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208185927" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208185927">(Aug 27 2020 at 07:35)</a>:</h4>
<p>like, if you use it often enough that typing <code>RUSTC_UNSTABLE=NO_STABILITY_GUARANTEES</code> is actually annoying, then just make <code>rbootstrap rustc ...</code> work on your system (which is shorter than today)</p>



<a name="208185943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208185943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208185943">(Aug 27 2020 at 07:35)</a>:</h4>
<p>There's few enough people that this applies to that IMO it's still justified</p>



<a name="208194183"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208194183" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208194183">(Aug 27 2020 at 09:21)</a>:</h4>
<p>TBH, I'd like to see more examples of "users use RUSTC_BOOTSTAP and then are burnt by this" before we discuss the solution space here.</p>
<p>The example from <a href="https://discordapp.com/channels/273534239310479360/274215136414400513/746403450669105254">https://discordapp.com/channels/273534239310479360/274215136414400513/746403450669105254</a> doesn't sound convincing to me personally -- if the person is asking "How can I find the nightly with the same commit as stable", they are probably knowledgeable enough about Rust's stability story to understand what they are doing.</p>
<p>From my own memory I can recall only a single instance of RUSTC_BOOTSTRAP misuse -- when simd_accel crate from Firefox set <code>RUST_BOOTSTRAP</code> in <code>build.rs</code>, and which than actually broke some code in the wild. That incident <em>didn't</em> have "I don't know what I am doing" factor to it.</p>
<p>Searching GitHub for RUSTC_BOOTSTRAP does not contradict that picture: <a href="https://github.com/search?l=Rust&amp;p=6&amp;q=RUSTC_BOOTSTRAP&amp;type=Code">https://github.com/search?l=Rust&amp;p=6&amp;q=RUSTC_BOOTSTRAP&amp;type=Code</a></p>
<p>Almost all of hits are forks/copies of that single crate, with a couple of exceptions (which also set <code>RUSTC_BOOTSTRAP</code> in <code>build.rs</code>):</p>
<ul>
<li><a href="https://github.com/CasualX/obfstr/blob/master/build.rs">https://github.com/CasualX/obfstr/blob/master/build.rs</a></li>
<li><a href="https://github.com/EllenNyan/none-array/blob/05c53ea75b6819daa3df3e4088393b1f26c6abc0/none-array/build.rs">https://github.com/EllenNyan/none-array/blob/05c53ea75b6819daa3df3e4088393b1f26c6abc0/none-array/build.rs</a></li>
<li><a href="https://github.com/strake/hash-table.rs/blob/master/build.rs">https://github.com/strake/hash-table.rs/blob/master/build.rs</a></li>
</ul>
<p>So, to sum up:</p>
<ul>
<li>I am not convinced that this something worth changing/discussion in absolute terms</li>
<li>In relative terms, in the space of "misuse of the RUSTC_BOOTSTRAP flag", the "unclearness" problem seems to be strictly dominated by "I'll just put RUSTC_BOOTSTRAP in my <a href="http://build.rs">build.rs</a> YOLO" (Amdahl's law)</li>
</ul>



<a name="208195000"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208195000" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208195000">(Aug 27 2020 at 09:33)</a>:</h4>
<p>People were also suggesting that xargo should just set <code>RUSTC_BOOTSTRAP</code> to work on stable, against wish I pushed back strongly.</p>



<a name="208195073"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208195073" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208195073">(Aug 27 2020 at 09:34)</a>:</h4>
<p>oh wow I didn't know crates can set this in their own <code>build.rs</code>... that's horrible, it means even when I am on a stable compiler and not doing anything like this myself, some of the crates I am using might do this!</p>



<a name="208195187"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208195187" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208195187">(Aug 27 2020 at 09:35)</a>:</h4>
<p>I feel like a more explicit flag would help inform <em>readers</em> of such code that this is not a thing that they should just copy-paste</p>



<a name="208195271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208195271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208195271">(Aug 27 2020 at 09:36)</a>:</h4>
<p>Right now there's some danger that "YOLO crates" get copied by people without them knowing the YOLO nature of what they are doing. I don't have any data to back this up, but I also wouldn't how how to collect such data -- the risk seems real enough to me.</p>



<a name="208195709"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208195709" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208195709">(Aug 27 2020 at 09:41)</a>:</h4>
<p>I agree that making env var somewhat more self-describing will somewhat decrease the risk of accidental copy-paste. It's just my impression than accidental copy-paste is very infrequent problem, in this case. </p>
<p>For the <a href="http://buid.rs">buid.rs</a> setting this env var, see <a href="https://github.com/rust-lang/cargo/issues/7088">https://github.com/rust-lang/cargo/issues/7088</a> and associated issues (warning: long, heated discussion)</p>



<a name="208212108"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208212108" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208212108">(Aug 27 2020 at 12:53)</a>:</h4>
<p>(actually a lot shorter than I expected)</p>



<a name="208212238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208212238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208212238">(Aug 27 2020 at 12:55)</a>:</h4>
<p>the general feeling I gathered from that is that people are ok with <code>RUSTC_BOOTSTRAP=1 cargo build</code> but not with it being in <code>build.rs</code>, because that means people that depend on your library are suddenly using unstable features without knowing it</p>



<a name="208212280"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208212280" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208212280">(Aug 27 2020 at 12:55)</a>:</h4>
<p>I do like <span class="user-mention" data-user-id="119009">@eddyb</span> 's suggestion that this is per-binary, not per-environment, so that only the top-level crate <em>can</em> set it</p>



<a name="208270374"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208270374" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208270374">(Aug 27 2020 at 20:17)</a>:</h4>
<p>I agree that this should not be settable from a <code>build.rs</code> script. I hadn't seen that particular issue.</p>



<a name="208270416"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208270416" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208270416">(Aug 27 2020 at 20:17)</a>:</h4>
<p>There's a big difference between setting it yourself and having a crate set it for you.</p>



<a name="208270429"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208270429" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208270429">(Aug 27 2020 at 20:17)</a>:</h4>
<p>The latter shouldn't be possible.</p>



<a name="208270468"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208270468" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208270468">(Aug 27 2020 at 20:18)</a>:</h4>
<p>And I'd be <em>happy</em> to <code>rfcbot merge</code> a Cargo patch that just rejects an attempt to set <code>RUSTC_BOOTSTRAP</code> from <code>build.rs</code>.</p>



<a name="208343902"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208343902" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208343902">(Aug 28 2020 at 13:42)</a>:</h4>
<p>"unstable on stable" is confusing to me</p>



<a name="208344054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208344054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208344054">(Aug 28 2020 at 13:43)</a>:</h4>
<p>(as a name)</p>



<a name="208348399"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208348399" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208348399">(Aug 28 2020 at 14:19)</a>:</h4>
<p><span class="user-mention silent" data-user-id="125270">scottmcm</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208149265">said</a>:</p>
<blockquote>
<p>(Suggestion inspired by the "Knock yourself out." banner on MIR output)</p>
</blockquote>
<p>Amusing side note, I think that original text was a throw-away suggestion from <span class="user-mention" data-user-id="116083">@pnkfelix</span> when I wanted to stabilize <code>--emit-mir</code> for the playground's usage. I kept it as-is because I felt it accurately and light-heartedly conveyed the fact that the _contents_ were not stable.</p>



<a name="208349320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208349320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208349320">(Aug 28 2020 at 14:27)</a>:</h4>
<p>I think it was mine!</p>



<a name="208349343"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208349343" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208349343">(Aug 28 2020 at 14:27)</a>:</h4>
<p>(But I might be wrong.)</p>



<a name="208352062"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208352062" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208352062">(Aug 28 2020 at 14:49)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208349320">said</a>:</p>
<blockquote>
<p>I think it was mine!</p>
</blockquote>
<p><a href="https://github.com/rust-lang/rust/pull/39891#issuecomment-283722173">You are right</a></p>



<a name="208353950"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208353950" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208353950">(Aug 28 2020 at 15:03)</a>:</h4>
<p>Sweet vindication</p>



<a name="208371025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208371025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208371025">(Aug 28 2020 at 17:17)</a>:</h4>
<p>Interesting, I did not know about that cargo issue. FWIW, I am all in favor.</p>



<a name="208371398"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208371398" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208371398">(Aug 28 2020 at 17:20)</a>:</h4>
<p>that issue also has some folks express frustration at things being stabilized too slowly. that is a fair point, but silently smuggling a dependency on unstable features into a dependency graph and thus subverting the stability guarantee is <em>not</em> an appropriate solution. (I'd post that in the issue but don't want to split the discussion.) the solution is to fix the stabilization process, not to smash it to pieces. rocket also survived and thrived nightly-only for years -- and conversely, just imagine the disaster if rocket started using that hack... I'd rather not.^^</p>



<a name="208371645"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208371645" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208371645">(Aug 28 2020 at 17:23)</a>:</h4>
<p>specifically, @hsivonen (not sure of their zulip nick) writes</p>
<blockquote>
<p>packed_simd is not at fault here. It has a rust-toolchain override, so even if you say rustup default stable, it picks your nightly compiler. However, if you try to build it as a dependency of another crate using the stable compiler, the build fails.</p>
</blockquote>
<p>Yes, and that is a feature! A user using stable should be able to rely on stability, ergo, they should be sure that all crates they build (transitively) are stable-only.</p>



<a name="208371691"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208371691" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208371691">(Aug 28 2020 at 17:23)</a>:</h4>
<p>this parallels what <span class="user-mention" data-user-id="239881">@Josh Triplett</span> wrote above, to which I 100% agree: </p>
<blockquote>
<p>There's a big difference between setting it yourself and having a crate set it for you.</p>
</blockquote>



<a name="208371889"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208371889" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208371889">(Aug 28 2020 at 17:25)</a>:</h4>
<p>Clearly we need an arms race, with another env variable <code>DISALLOW_RUSTC_BOOTSTRAP</code> that supersedes the current one <span aria-label="wink" class="emoji emoji-1f609" role="img" title="wink">:wink:</span></p>



<a name="208372013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208372013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208372013">(Aug 28 2020 at 17:26)</a>:</h4>
<p>I think we're to the point of "please send a PR". If someone makes a PR to Cargo that prevents <code>build.rs</code> from setting <code>RUSTC_BOOTSTRAP</code>, I'll rfcbot merge it to confirm consensus.</p>



<a name="208372386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208372386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208372386">(Aug 28 2020 at 17:29)</a>:</h4>
<p>But some will then ask for <code>DISALLOW_DISALLOW_RUSTC_BOOTSTRAP</code> <span aria-label="stuck out tongue wink" class="emoji emoji-1f61c" role="img" title="stuck out tongue wink">:stuck_out_tongue_wink:</span></p>



<a name="208372581"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208372581" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208372581">(Aug 28 2020 at 17:31)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208372013">said</a>:</p>
<blockquote>
<p>I think we're to the point of "please send a PR". If someone makes a PR to Cargo that prevents <code>build.rs</code> from setting <code>RUSTC_BOOTSTRAP</code>, I'll rfcbot merge it to confirm consensus.</p>
</blockquote>
<p>the issue says this is RFC material -- but I agree it feels to me like FCP is sufficient. not sure which teams though. lang and compiler?</p>



<a name="208373016"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373016" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373016">(Aug 28 2020 at 17:34)</a>:</h4>
<p>this seems like it's not part of lang?</p>



<a name="208373037"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373037" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373037">(Aug 28 2020 at 17:34)</a>:</h4>
<p>RUSTC_BOOTSTRAP has always been an implementation detail</p>



<a name="208373061"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373061" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373061">(Aug 28 2020 at 17:34)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> The comment on that issue about an RFC was when someone tried to say "you can't change this unless we also talk about stability policy!".</p>



<a name="208373126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373126">(Aug 28 2020 at 17:35)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> Changes to <code>RUSTC_BOOTSTRAP</code> itself would probably want to be compiler-team consensus, potentially in consultation with other teams.</p>



<a name="208373217"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373217" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373217">(Aug 28 2020 at 17:36)</a>:</h4>
<p>But changing cargo to prevent <code>build.rs</code> from setting it is something that I think can start in the Cargo team.</p>



<a name="208373350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373350">(Aug 28 2020 at 17:37)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208373016">said</a>:</p>
<blockquote>
<p>this seems like it's not part of lang?</p>
</blockquote>
<p>Agreed, this isn't a lang question at all. <code>RUSTC_BOOTSTRAP</code> itself is compiler, and if it needs broader consensus, probably core. <code>build.rs</code> is cargo, potentially in consultation with compiler, and if necessary core.</p>



<a name="208373523"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208373523" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208373523">(Aug 28 2020 at 17:39)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208373217">said</a>:</p>
<blockquote>
<p>But changing cargo to prevent <code>build.rs</code> from setting it is something that I think can start in the Cargo team.</p>
</blockquote>
<p>oh, I didnt know there was a cargo team that you're on. :) makes sense though.</p>



<a name="208375644"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208375644" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208375644">(Aug 28 2020 at 17:58)</a>:</h4>
<p>Would someone be up for writing that patch?</p>



<a name="208376926"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208376926" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208376926">(Aug 28 2020 at 18:10)</a>:</h4>
<p>I might have time this weekend</p>



<a name="208376939"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208376939" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208376939">(Aug 28 2020 at 18:10)</a>:</h4>
<p>but if someone has time sooner feel free to beat me to it ;)</p>



<a name="208377337"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208377337" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208377337">(Aug 28 2020 at 18:14)</a>:</h4>
<p>Quick guide for that change: <code>src/cargo/core/compiler/custom_build.rs</code> processes <code>rustc-env</code> directives from <code>build.rs</code>, so you'd need to add a check there, and <code>anyhow::bail!</code> in that case.</p>



<a name="208377359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208377359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208377359">(Aug 28 2020 at 18:14)</a>:</h4>
<p>Then just add a test case, and document the new behavior in the manual where it currently documents <code>rustc-env</code>.</p>



<a name="208402578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208402578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208402578">(Aug 28 2020 at 22:43)</a>:</h4>
<p>Note that there's an existing patch for this, it might or might not make sense to rebase it: <a href="https://github.com/rust-lang/cargo/pull/6608">https://github.com/rust-lang/cargo/pull/6608</a></p>



<a name="208403234"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403234" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403234">(Aug 28 2020 at 22:53)</a>:</h4>
<p>hmm I'm reading through <a href="https://github.com/rust-lang/cargo/pull/6608#issuecomment-458546258">https://github.com/rust-lang/cargo/pull/6608#issuecomment-458546258</a> and it seems like this would make the firefox people very unhappy</p>



<a name="208403370"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403370" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403370">(Aug 28 2020 at 22:55)</a>:</h4>
<p>I'm ok writing the code for this but I don't feel very comfortable defending this change, especially when even the core team isn't sure what to do: <a href="https://github.com/rust-lang/cargo/pull/6608#issuecomment-459137496">https://github.com/rust-lang/cargo/pull/6608#issuecomment-459137496</a></p>



<a name="208403516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403516">(Aug 28 2020 at 22:57)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> the code is here if you want it but I don't intend to make a PR with those changes: <a href="https://github.com/jyn514/cargo/tree/rustc-bootstrap">https://github.com/jyn514/cargo/tree/rustc-bootstrap</a></p>



<a name="208403632"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403632" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403632">(Aug 28 2020 at 22:58)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> Reading through that thread, it sounds to me like people agree that crates shouldn't be setting this on behalf of projects. We're not proscribing the use of <code>RUSTC_BOOTSTRAP</code> at all, we're just making it so crates can't silently opt into it, since it affects the overall project.</p>



<a name="208403650"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403650" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403650">(Aug 28 2020 at 22:59)</a>:</h4>
<p>sure, and if the cargo team wants to make that decision I have no objection</p>



<a name="208403654"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403654" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403654">(Aug 28 2020 at 22:59)</a>:</h4>
<p>but I don't want to be the face of the change</p>



<a name="208403660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403660">(Aug 28 2020 at 22:59)</a>:</h4>
<p>I'd be perfectly fine adding a finer-grained mechanism to allow opting in on a per-crate basis, as long as the opt-in was at the top level.</p>



<a name="208403663"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403663" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403663">(Aug 28 2020 at 22:59)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208403654">said</a>:</p>
<blockquote>
<p>but I don't want to be the face of the change</p>
</blockquote>
<p>Sure, I understand that.</p>



<a name="208403707"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403707" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403707">(Aug 28 2020 at 23:00)</a>:</h4>
<p>Do you object to your commit being used in someone else's pull request? I'm happy to send the PR.</p>



<a name="208403860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403860">(Aug 28 2020 at 23:02)</a>:</h4>
<p>Not at all, go ahead :)</p>



<a name="208403866"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403866" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403866">(Aug 28 2020 at 23:02)</a>:</h4>
<p>Also, I just thought of one other thing that we should probably do to make this simpler for people to deal with.</p>



<a name="208403884"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403884" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403884">(Aug 28 2020 at 23:02)</a>:</h4>
<p>Could we make it so that if <code>RUSTC_BOOTSTRAP</code> is set to <code>1</code> in <em>our</em> environment, we don't do this?</p>



<a name="208403903"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403903" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403903">(Aug 28 2020 at 23:03)</a>:</h4>
<p>that seems reasonable</p>



<a name="208403906"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403906" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403906">(Aug 28 2020 at 23:03)</a>:</h4>
<p>That way, if you go ahead and do <code>RUSTC_BOOTSTRAP=1 cargo ...</code> as suggested, it actually works.</p>



<a name="208403920"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403920" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403920">(Aug 28 2020 at 23:03)</a>:</h4>
<p>And if people opt-in at the top level, as we're suggesting that they do, then they don't get this at all.</p>



<a name="208403931"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403931" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403931">(Aug 28 2020 at 23:03)</a>:</h4>
<p>Rather than having to <em>also</em> go in and fix crates.</p>



<a name="208403962"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403962" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403962">(Aug 28 2020 at 23:04)</a>:</h4>
<p>Another thing I think should happen first is allowing per-crate rustc bootstrap</p>



<a name="208403986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208403986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208403986">(Aug 28 2020 at 23:04)</a>:</h4>
<p>Instead of a blanket 'everyome gets nightly'</p>



<a name="208404000"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404000" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404000">(Aug 28 2020 at 23:04)</a>:</h4>
<p>That's a good call. For instance, <code>RUSTC_BOOTSTRAP="foo bar"</code> to make those named crates use nightly?</p>



<a name="208404008"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404008" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404008">(Aug 28 2020 at 23:04)</a>:</h4>
<p>I like that idea very much.</p>



<a name="208404009"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404009" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404009">(Aug 28 2020 at 23:04)</a>:</h4>
<p>(not my idea originally: <a href="https://github.com/rust-lang/cargo/pull/6608#issuecomment-458546258">https://github.com/rust-lang/cargo/pull/6608#issuecomment-458546258</a>)</p>



<a name="208404018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404018">(Aug 28 2020 at 23:05)</a>:</h4>
<p>That'd be a compiler change, I think, though technically Cargo <em>could</em> translate it.</p>



<a name="208404031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404031">(Aug 28 2020 at 23:05)</a>:</h4>
<p>I don't think Cargo <em>should</em>; I think it makes sense for rustc to do so.</p>



<a name="208404044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404044">(Aug 28 2020 at 23:05)</a>:</h4>
<p>But I agree that it's <em>probably</em> better to have that go in first.</p>



<a name="208404098"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404098" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404098">(Aug 28 2020 at 23:06)</a>:</h4>
<p>And then cargo could avoid emitting the error if either <code>RUSTC_BOOTSTRAP=1</code> or <code>RUSTC_BOOTSTRAP</code> split on words contains the crate name.</p>



<a name="208404135"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404135" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404135">(Aug 28 2020 at 23:07)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> First of all, <em>thank you</em> for implementing the Cargo side of this. I'm always happy to see more people contributing to Cargo.</p>



<a name="208404200"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404200" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404200">(Aug 28 2020 at 23:08)</a>:</h4>
<p>Second: Would you be up for implementing the compiler side of this? 🥺</p>



<a name="208404828"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404828" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404828">(Aug 28 2020 at 23:20)</a>:</h4>
<p>Yeah I'd be much more comfortable doing that</p>



<a name="208404892"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404892" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404892">(Aug 28 2020 at 23:21)</a>:</h4>
<p>Once that's in, I'll submit the Cargo PR with your (modified) commit.</p>



<a name="208404908"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208404908" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208404908">(Aug 28 2020 at 23:21)</a>:</h4>
<p>Also, once that's in, we can tell people to use <code>RUSTC_BOOTSTRAP="current_crate_name"</code>.</p>



<a name="208426461"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208426461" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208426461">(Aug 29 2020 at 09:56)</a>:</h4>
<p>Btw, one thing occurred to me -- the use of RUSTC_BOOTSTRAP=1 on stable has quite a few parallels with code deliberately causing UB that "happens to work". In both cases Rust has some problem (like a stable feature missing or something not being possible within the confines of the language spec), and then people start working around it as they feel unable to fix the source problem, and this in turn causes some fundamental problems for the project as a hole, and you end up with people accidentally relying on it somewhere in their dependency tree without realizing.</p>
<p>I am saying this also because I recall <span class="user-mention" data-user-id="239881">@Josh Triplett</span> being very wary of breaking crates that deliberately exploit UB -- looks like you see this bootstrap situation as being different. I am wondering why.</p>



<a name="208431193"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208431193" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208431193">(Aug 29 2020 at 12:25)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208404200">said</a>:</p>
<blockquote>
<p>Second: Would you be up for implementing the compiler side of this? 🥺</p>
</blockquote>
<p>This turned out to be somewhat hard to implement in rustc, because <a href="#narrow/stream/182449-t-compiler.2Fhelp/topic/Find.20the.20name.20of.20a.20crate.20before.20I.20know.20the.20edition.3F">it wants to know stable/unstable extremely early in startup</a>. It would be easier to implement this in Cargo <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/208404018">as suggested by <span class="user-mention silent" data-user-id="239881">Josh Triplett</span> </a>, but I'm willing to try and add it rustc, it will just take a while.</p>



<a name="208437595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208437595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208437595">(Aug 29 2020 at 14:53)</a>:</h4>
<p>I think it <em>needs</em> to be in rustc, because it needs to work without cargo.</p>



<a name="208437662"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208437662" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208437662">(Aug 29 2020 at 14:54)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> I don't like breaking crates that used UB when there was no other way to do something and it worked in practice. Here, there <em>is</em> a solution: use nightly.</p>



<a name="208437687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208437687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208437687">(Aug 29 2020 at 14:55)</a>:</h4>
<p>I don't have nearly as much sympathy for UB when we provide a solution and that solution existed and was known when the code was written.</p>



<a name="208437691"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208437691" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208437691">(Aug 29 2020 at 14:55)</a>:</h4>
<p>Does that answer your question?</p>



<a name="208438318"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/208438318" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#208438318">(Aug 29 2020 at 15:08)</a>:</h4>
<p>It does, thanks.</p>



<a name="211137912"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211137912" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211137912">(Sep 24 2020 at 14:21)</a>:</h4>
<p>hi</p>



<a name="211137941"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211137941" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211137941">(Sep 24 2020 at 14:21)</a>:</h4>
<p>I already wrote a comment here <a href="https://github.com/rust-lang/compiler-team/issues/350#issuecomment-698372654">https://github.com/rust-lang/compiler-team/issues/350#issuecomment-698372654</a></p>



<a name="211137978"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211137978" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211137978">(Sep 24 2020 at 14:22)</a>:</h4>
<p>I haven't read all the discussion</p>



<a name="211138016"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211138016" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211138016">(Sep 24 2020 at 14:22)</a>:</h4>
<p>but I'll keep presenting my idea even if every single time nothing happens :P</p>



<a name="211138044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211138044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211138044">(Sep 24 2020 at 14:22)</a>:</h4>
<p>there's no reason to rely on env vars, it was entirely a "let's get something working" thing</p>



<a name="211138081"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211138081" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211138081">(Sep 24 2020 at 14:23)</a>:</h4>
<p>that we somehow have stuck with for, what, 5 years?</p>



<a name="211140145"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211140145" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jonas Schievink  [he/him] <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211140145">(Sep 24 2020 at 14:36)</a>:</h4>
<p>Seems like a drawback to make stable rustc incapable of using nightly features. I use that very often to test things.</p>



<a name="211140617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211140617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211140617">(Sep 24 2020 at 14:39)</a>:</h4>
<p><span class="user-mention" data-user-id="211727">@Jonas Schievink</span> I think eddyb is proposing we'd ship a rustc-unstable file on all channels, and you'd do something like RUSTC=$HOME/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/rustc-unstable or so to get it</p>



<a name="211140635"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211140635" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211140635">(Sep 24 2020 at 14:39)</a>:</h4>
<p>(or potentially <code>$(rustup which rustc-unstable)</code>)</p>



<a name="211141083"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211141083" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jonas Schievink  [he/him] <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211141083">(Sep 24 2020 at 14:42)</a>:</h4>
<p>Ah, I see, that could work, yeah</p>



<a name="211141792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211141792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211141792">(Sep 24 2020 at 14:47)</a>:</h4>
<p>Setting <code>RUSTC</code> means that cargo will recompile everything. You could then just as well switch to a nightly compiler.</p>



<a name="211144502"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211144502" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jonas Schievink  [he/him] <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211144502">(Sep 24 2020 at 15:05)</a>:</h4>
<p>Urg, yeah</p>



<a name="211145541"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211145541" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211145541">(Sep 24 2020 at 15:11)</a>:</h4>
<p>I don't always have a nightly compiler for a past stable release, and when dealing with perf regressions I recently used <code>RUSTC_BOOTSTRAP=1 cargo rustc -- -Zself-profile</code> or something like this, which felt really useful to me. I feel like <code>rustc-unstable</code> adds more steps here which doesn't seem worth it to me.</p>



<a name="211145639"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211145639" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211145639">(Sep 24 2020 at 15:12)</a>:</h4>
<p>Can we emit a warning when using <code>RUSTC_BOOTSTRAP</code>, which imo might be enough to make this more obvious</p>



<a name="211145815"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211145815" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211145815">(Sep 24 2020 at 15:13)</a>:</h4>
<p>and the additional noise doesn't seem like a problem to me, as situations where <code>RUSTC_BOOTSTRAP</code> is appropriate are already quite special, so imo it's ok to annoy people with a warning here</p>



<a name="211146375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211146375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211146375">(Sep 24 2020 at 15:17)</a>:</h4>
<p>so there are several different issues with the current setup</p>



<a name="211146642"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211146642" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211146642">(Sep 24 2020 at 15:19)</a>:</h4>
<ol>
<li>New users don't know RUSTC_BOOTSTRAP is bad and use it because they saw it on the internet. This would be helped by a warning, splitting into binaries, or changing the name.</li>
<li>Codebases with a legitimate use, like <code>rustc</code> and (controversially) firefox, can't set it granularly, so they have the risk of allowing <em>other</em> crates that shouldn't build on stable into their dependency tree. This would be helped by <code>RUSTC_BOOTSTRAP=crate</code> but not much else.</li>
</ol>
<p><del>3. I forgot three, I'll try to think of it</del></p>



<a name="211146785"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211146785" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211146785">(Sep 24 2020 at 15:20)</a>:</h4>
<p>I think any changes we take should take both use cases into account</p>



<a name="211147015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211147015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211147015">(Sep 24 2020 at 15:21)</a>:</h4>
<p>and then there's a separate question of <em>should</em> there be legitimate uses other than finding compiler bugs, but I don't think we should try to tackle that here</p>



<a name="211164873"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211164873" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211164873">(Sep 24 2020 at 17:37)</a>:</h4>
<p><span class="user-mention silent" data-user-id="133247">bjorn3</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/211141792">said</a>:</p>
<blockquote>
<p>Setting <code>RUSTC</code> means that cargo will recompile everything. You could then just as well switch to a nightly compiler.</p>
</blockquote>
<p>I've done the <code>RUST_BOOTSTRAP</code> thing myself for testing purposes and after I switch back to not using it, I get errors from crates that do auto-detection whether nightly features are available. Forgot which crate it was, but I think it's in cargo's dependency tree.</p>



<a name="211165071"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211165071" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211165071">(Sep 24 2020 at 17:38)</a>:</h4>
<p>Oh I remember, it's anyhow</p>



<a name="211165194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211165194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211165194">(Sep 24 2020 at 17:39)</a>:</h4>
<p><a href="https://github.com/dtolnay/anyhow/blob/master/build.rs">https://github.com/dtolnay/anyhow/blob/master/build.rs</a></p>



<a name="211992297"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211992297" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211992297">(Oct 02 2020 at 00:27)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/211146642">said</a>:</p>
<blockquote>
<ol>
<li>New users don't know RUSTC_BOOTSTRAP is bad and use it because they saw it on the internet. This would be helped by a warning, splitting into binaries, or changing the name.</li>
<li>Codebases with a legitimate use, like <code>rustc</code> and (controversially) firefox, can't set it granularly, so they have the risk of allowing <em>other</em> crates that shouldn't build on stable into their dependency tree. This would be helped by <code>RUSTC_BOOTSTRAP=crate</code> but not much else.</li>
</ol>
<p><del>3. I forgot three, I'll try to think of it</del></p>
</blockquote>
<p>Regarding 2: I've said it in other threads: Firefox <em>can</em> set it granularly. They could use a rustc wrapper and pass RUSTC_BOOTSTRAP to the wrapped rustc based on the crate name that the wrapper gets. That's no rocket science.</p>



<a name="211992394"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/211992394" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#211992394">(Oct 02 2020 at 00:29)</a>:</h4>
<p>But if something gets done about RUSTC_BOOTSTRAP I'd be really glad. Two compiler binaries would be a good start.</p>



<a name="212053822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212053822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212053822">(Oct 02 2020 at 09:50)</a>:</h4>
<p><span class="user-mention silent" data-user-id="120096">est31</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/211992394">said</a>:</p>
<blockquote>
<p>Two compiler binaries would be a good start.</p>
</blockquote>
<p>Good start into the bad direction, IMO.<br>
If that happens, we'll need to at least ensure that the unstable rust binary is always shipped together with the stable one.<br>
Right now env var is the most convenient and non-invasive way to unlock the nightly features if it becomes necessary.<br>
I don't want to end up wanting <code>--pretty=expanded</code> to debug something now, but having to, for example, wait for several days for admins to install the necessary unstable components, which is a pretty realistic scenario in a corporate environment.</p>



<a name="212189915"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212189915" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212189915">(Oct 03 2020 at 21:06)</a>:</h4>
<p><span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> well in theory, with that proposal, the .so file is always around and you can always compile a custom nightly using rustc for it. I'm sure that someone will publish something like that to github once the problem arises. Your use case is legitimate though, often you want to test something on the precise same compiler version that compiles your thing for production.</p>



<a name="212218857"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212218857" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212218857">(Oct 04 2020 at 11:24)</a>:</h4>
<p>The first step was mostly about making sure crates cannot "silently" move to nightly without the user even knowing, i.e., the <code>build.rs</code> problem...  what is the status of that? <a href="https://github.com/rust-lang/cargo/issues/7088">https://github.com/rust-lang/cargo/issues/7088</a> didn't see any activity it seems.</p>



<a name="212221985"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212221985" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212221985">(Oct 04 2020 at 12:50)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> I wanted to make sure there was an alternative to RUSTC_BOOTSTRAP=1 before forbidding it, namely <code>RUSTC_BOOTSTRAP=crate</code>. That hasn't been implemented and I don't think it makes sense to forbid this in build scripts until it is</p>



<a name="212222123"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212222123" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212222123">(Oct 04 2020 at 12:52)</a>:</h4>
<p>(see <a href="#narrow/stream/182449-t-compiler.2Fhelp/topic/Find.20the.20name.20of.20a.20crate.20before.20I.20know.20the.20edition.3F">https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/Find.20the.20name.20of.20a.20crate.20before.20I.20know.20the.20edition.3F</a> for some of the trouble I was having, I haven't worked on it in a while)</p>



<a name="212222724"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212222724" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212222724">(Oct 04 2020 at 13:11)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> that is a neat feature, but I dont think it should block the <code>build.rs</code> change</p>



<a name="212222744"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212222744" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212222744">(Oct 04 2020 at 13:11)</a>:</h4>
<p><code>RUSTC_BOOTSTRAP=crate cargo build</code> is better than <code>RUSTC_BOOTSTRAP=1 cargo build</code> but even that is better than <code>cargo build</code> just silently using the env var for some crates</p>



<a name="212222819"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212222819" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212222819">(Oct 04 2020 at 13:13)</a>:</h4>
<p>I mean, personally I disagree but I'm not on t-cargo and don't really have a stake in this fight ;) I'm just not willing to make the change <em>myself</em> until this is implemented</p>



<a name="212223603"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212223603" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212223603">(Oct 04 2020 at 13:34)</a>:</h4>
<p>I hope this is not a fight :)</p>



<a name="212223615"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212223615" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212223615">(Oct 04 2020 at 13:35)</a>:</h4>
<p>I recall <span class="user-mention" data-user-id="239881">@Josh Triplett</span> supporting this change; Josh -- do you think this needs <code>RUSTC_BOOTSTRAP=crate</code> or can we disable the env var on the cargo side before having more fine-grained env var control?</p>



<a name="212224681"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212224681" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212224681">(Oct 04 2020 at 14:04)</a>:</h4>
<p>I support the eddyb approach if we're making a <em>cough</em> breaking <em>cough</em> change here.</p>



<a name="212224699"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212224699" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212224699">(Oct 04 2020 at 14:05)</a>:</h4>
<p>as for <a href="http://build.rs">build.rs</a> I vote filter out entirely</p>



<a name="212224868"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212224868" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212224868">(Oct 04 2020 at 14:09)</a>:</h4>
<p>from <span class="user-mention silent" data-user-id="119009">eddyb</span>'s comment <a href="https://github.com/rust-lang/compiler-team/issues/350#issuecomment-698372654">https://github.com/rust-lang/compiler-team/issues/350#issuecomment-698372654</a></p>
<blockquote>
<p>The important aspect, IMO, is that CI and distro build environments can remove access to it entirely, leaving the regular rustc incapable of turning into rustc-unstable, no matter its environment.</p>
</blockquote>
<p>I really don't think that this is desirable. Using <code>RUSTC_BOOTSTRAP</code> is often very helpful when quickly looking at regressions so I don't want to see this made harder/impossible to do.</p>
<p>More explicitly warning when it is used (by either changing the name or emitting a warning everytime it is used) seems better to me</p>



<a name="212224948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212224948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212224948">(Oct 04 2020 at 14:11)</a>:</h4>
<p><span class="user-mention" data-user-id="216206">@lcnr</span> what is your stanza re: <code>RUSTC_BOOTSTRAP</code> in <code>build.rs</code>? keep it, kill it ASAP, or kill it when we have <code>RUSTC_BOOTSTRAP=crate</code>?</p>



<a name="212224993"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212224993" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212224993">(Oct 04 2020 at 14:12)</a>:</h4>
<p>hmm, I guess it's an issue if it is used in a crate and the crate consumer does not notice this <span aria-label="thinking" class="emoji emoji-1f914" role="img" title="thinking">:thinking:</span></p>



<a name="212225000"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212225000" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212225000">(Oct 04 2020 at 14:12)</a>:</h4>
<p>imo a warning which can't be silenced would be enough there though</p>



<a name="212225155"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212225155" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212225155">(Oct 04 2020 at 14:16)</a>:</h4>
<p>though <code>RUSTC_BOOTSTRAP</code> has to always be used when bootstrapping the compiler afaik so always getting a warning there also doesn't seem great :/</p>



<a name="212225224"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212225224" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212225224">(Oct 04 2020 at 14:18)</a>:</h4>
<p>Distro rustc has to bootstrap the next rustc, so we can't kill that entirely</p>



<a name="212225247"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212225247" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212225247">(Oct 04 2020 at 14:19)</a>:</h4>
<p>Same goes for CI builds today, though I suppose that could start using alternate builds as stage0</p>



<a name="212225534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212225534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212225534">(Oct 04 2020 at 14:27)</a>:</h4>
<p><span class="user-mention silent" data-user-id="138448">cuviper</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212225224">said</a>:</p>
<blockquote>
<p>Distro rustc has to bootstrap the next rustc, so we can't kill that entirely</p>
</blockquote>
<p>Distros can choose to ship a package with unstable-enabled rustc driver, either separately, in a different output, or in the same output within libexec or similar.</p>



<a name="212230890"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212230890" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212230890">(Oct 04 2020 at 16:53)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> In theory, it would be my preference to prohibit <a href="http://build.rs">build.rs</a> files from using <code>RUSTC_BOOTSTRAP</code> immediately. However, from a pragmatic point of view, as soon as we do that, people will adapt their build environments to start supplying that variable when they need to, and when we do that, I would like to have a better alternative for them to switch to that we could provide an automatic suggestion for. For example, we could detect that the <a href="http://build.rs">build.rs</a> script of the crate <code>xyz</code> is attempting to export <code>RUSTC_BOOTSTRAP</code>, and we could error out but suggest that they export <code>RUSTC_BOOTSTRAP=xyz</code>.</p>



<a name="212230948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212230948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212230948">(Oct 04 2020 at 16:54)</a>:</h4>
<p>If we don't have that available, then people who encounter that error are likely to end up building their entire crate hierarchy using nightly, rather than just the one crate that wants it.</p>



<a name="212230962"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212230962" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212230962">(Oct 04 2020 at 16:56)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> How goes the change to support <code>=crate</code>?</p>



<a name="212231171"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212231171" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212231171">(Oct 04 2020 at 17:01)</a>:</h4>
<p>uhhh</p>



<a name="212231175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212231175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212231175">(Oct 04 2020 at 17:01)</a>:</h4>
<p>I have not put <del>any</del> much time into it</p>



<a name="212232035"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212232035" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212232035">(Oct 04 2020 at 17:24)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> No pressure, just wondered. Life happens. :)</p>



<a name="212515056"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212515056" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212515056">(Oct 07 2020 at 04:51)</a>:</h4>
<p>Banning <code>RUSTC_BOOTSTRAP</code> in <a href="http://build.rs">build.rs</a> should be a no-brainer at this point. As I've said in the cargo threads, firefox can just use a rustc wrapper that passes <code>RUSTC_BOOTSTRAP</code>. That wrapper has to be set using .cargo/config which makes it much harder to upload "encapsulated nightly use" to <a href="http://crates.io">crates.io</a> without detection. The wrapper also gives them the desired control over what can use nightly and what can't because the rustc wrapper can parse the arguments passed to it and only set RUSTC_BOOTSTRAP for those crate names they are interested in.</p>



<a name="212515258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212515258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> est31 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212515258">(Oct 07 2020 at 04:56)</a>:</h4>
<p>Also as I understand it, firefox uses mach anyways instead of cargo</p>



<a name="212573813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212573813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212573813">(Oct 07 2020 at 15:16)</a>:</h4>
<p>Firefox would be my primary concern, so if the folks there would accept needing to do that, I would happily rfcbot merge a cargo patch to filter that out of <a href="http://build.rs">build.rs</a> and warn.</p>



<a name="212574165"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212574165" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212574165">(Oct 07 2020 at 15:18)</a>:</h4>
<p>Not error, because that would break existing crates and require revving them all to unbreak. But catching attempts to set RUSTC_BOOTSTRAP from <a href="http://build.rs">build.rs</a> and rejecting that with a warning sounds great.</p>



<a name="212912578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212912578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212912578">(Oct 10 2020 at 11:52)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212574165">said</a>:</p>
<blockquote>
<p>Not error, because that would break existing crates and require revving them all to unbreak. But catching attempts to set RUSTC_BOOTSTRAP from <a href="http://build.rs">build.rs</a> and rejecting that with a warning sounds great.</p>
</blockquote>
<p>with a plan to make this a hard error eventually, future-incompat style?</p>



<a name="212912585"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212912585" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212912585">(Oct 10 2020 at 11:52)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212573813">said</a>:</p>
<blockquote>
<p>Firefox would be my primary concern, so if the folks there would accept needing to do that, I would happily rfcbot merge a cargo patch to filter that out of <a href="http://build.rs">build.rs</a> and warn.</p>
</blockquote>
<p>what would be the best way to reach out to them?</p>



<a name="212929991"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212929991" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212929991">(Oct 10 2020 at 19:01)</a>:</h4>
<p>I opened <a href="https://github.com/rust-lang/rust/pull/77802">https://github.com/rust-lang/rust/pull/77802</a>.</p>



<a name="212930767"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212930767" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212930767">(Oct 10 2020 at 19:19)</a>:</h4>
<p>cc <span class="user-mention" data-user-id="239881">@Josh Triplett</span>, I finally got around to it <span aria-label="laughing" class="emoji emoji-1f606" role="img" title="laughing">:laughing:</span></p>



<a name="212934503"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212934503" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212934503">(Oct 10 2020 at 21:04)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> No, with a plan to make it an error immediately, but offer an alternative.</p>



<a name="212934508"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212934508" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212934508">(Oct 10 2020 at 21:04)</a>:</h4>
<p><span class="user-mention" data-user-id="120791">@RalfJ</span> "reject it with a warning" was perhaps ambiguous.</p>



<a name="212934514"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212934514" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212934514">(Oct 10 2020 at 21:04)</a>:</h4>
<p>I meant "reject it and provide a message"</p>



<a name="212934516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212934516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212934516">(Oct 10 2020 at 21:04)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> Reading.</p>



<a name="212956119"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212956119" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212956119">(Oct 11 2020 at 08:51)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212934514">said</a>:</p>
<blockquote>
<p>I meant "reject it and provide a message"</p>
</blockquote>
<p>oh, "warning" as in "continue the cargo build", but not actually with <code>RUSTC_BOOTSTRAP</code> set. understood.</p>



<a name="212971782"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212971782" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212971782">(Oct 11 2020 at 16:30)</a>:</h4>
<p>Yes, exactly.</p>



<a name="212978290"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212978290" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212978290">(Oct 11 2020 at 19:30)</a>:</h4>
<p>related: now that <code>RUSTC_BOOTSTRAP=0</code> is no longer going to have meaning, can we repurpose that to mean 'emulate a stable compiler on nightly'?</p>



<a name="212978303"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212978303" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212978303">(Oct 11 2020 at 19:31)</a>:</h4>
<p>It would be helpful for testing rustdoc's <del>misuse of</del> stability-dependent code, like <a href="https://github.com/rust-lang/rust/pull/75953">https://github.com/rust-lang/rust/pull/75953</a> and <a href="https://github.com/rust-lang/rust/pull/77827">https://github.com/rust-lang/rust/pull/77827</a></p>



<a name="212981014"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981014" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981014">(Oct 11 2020 at 20:47)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> Oh, I love that idea.</p>



<a name="212981016"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981016" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981016">(Oct 11 2020 at 20:47)</a>:</h4>
<p>I <em>really</em> love that idea.</p>



<a name="212981063"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981063" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981063">(Oct 11 2020 at 20:48)</a>:</h4>
<p>It'd also be nice to have an in-Rust-code equivalent that you can put at the top of a file, to opt out of nightly even on a nightly compiler.</p>



<a name="212981066"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981066" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981066">(Oct 11 2020 at 20:48)</a>:</h4>
<p>But having a quick way to do that on the command line seems like a good plan.</p>



<a name="212981069"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981069" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981069">(Oct 11 2020 at 20:48)</a>:</h4>
<p>Using <code>RUSTC_BOOTSTRAP</code> for that is...quirky, but amusing.</p>



<a name="212981071"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981071" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981071">(Oct 11 2020 at 20:48)</a>:</h4>
<p>Might also make sense to do it with a separate dedicated variable.</p>



<a name="212981074"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981074" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981074">(Oct 11 2020 at 20:48)</a>:</h4>
<p>'I am <em>not</em> bootstrapping'</p>



<a name="212981080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981080">(Oct 11 2020 at 20:49)</a>:</h4>
<p>sure, separate variable seems fine</p>



<a name="212981084"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981084" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981084">(Oct 11 2020 at 20:49)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212981074">said</a>:</p>
<blockquote>
<p>'I am <em>not</em> bootstrapping'</p>
</blockquote>
<p><code>RUSTC_VENTURE_CAPITAL=1</code>. ;)</p>



<a name="212981137"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981137" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981137">(Oct 11 2020 at 20:50)</a>:</h4>
<p>actually - someone mentioned <code>RUSTC_FORCE_UNSTABLE</code> a while ago, maybe eventually we could have both that and <code>RUSTC_FORCE_STABLE</code></p>



<a name="212981139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981139">(Oct 11 2020 at 20:50)</a>:</h4>
<p>I like both those names better than <code>RUSTC_BOOTSTRAP</code></p>



<a name="212981145"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981145" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981145">(Oct 11 2020 at 20:51)</a>:</h4>
<p>and they could both support per-crate opt-in/out</p>



<a name="212981320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212981320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212981320">(Oct 11 2020 at 20:56)</a>:</h4>
<p>I like that concept. Should be straightforward to modify your patch to use <code>RUSTC_ALLOW_UNSTABLE=crate1,crate2</code> or similar, instead of modifying <code>RUSTC_BOOTSTRAP</code>.</p>



<a name="212983454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212983454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212983454">(Oct 11 2020 at 21:56)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212981063">said</a>:</p>
<blockquote>
<p>It'd also be nice to have an in-Rust-code equivalent that you can put at the top of a file, to opt out of nightly even on a nightly compiler.</p>
</blockquote>
<p>isn't that just "don't add any <code>feature</code> attribute"?</p>



<a name="212983610"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212983610" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212983610">(Oct 11 2020 at 22:00)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> is suggesting something like <code>forbid(features)</code> I think</p>



<a name="212983614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212983614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212983614">(Oct 11 2020 at 22:00)</a>:</h4>
<p>Where adding a feature gives a compile error</p>



<a name="212983638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212983638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212983638">(Oct 11 2020 at 22:01)</a>:</h4>
<p>Although even that wouldn't help with rustdoc because it's bad at using feature gates :/</p>



<a name="212983759"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/212983759" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#212983759">(Oct 11 2020 at 22:04)</a>:</h4>
<p>Related: <a href="https://github.com/rust-lang/rust/issues/63305">https://github.com/rust-lang/rust/issues/63305</a></p>



<a name="213504112"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213504112" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213504112">(Oct 16 2020 at 00:18)</a>:</h4>
<p>I asked on the PR but I'll ask again here: what's the path forward for <a href="https://github.com/rust-lang/rust/pull/77802">https://github.com/rust-lang/rust/pull/77802</a> ? Do I need a new MCP? Should I update this one? Does it need FCP? I don't want it to hang in limbo forever.</p>



<a name="213513815"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213513815" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213513815">(Oct 16 2020 at 03:09)</a>:</h4>
<p>I think an FCP would be appropriate. I can't kick that off myself, but I expect <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> or <span class="user-mention" data-user-id="116083">@pnkfelix</span> will when they get a chance (presuming they agree).</p>



<a name="213622755"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213622755" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213622755">(Oct 16 2020 at 22:55)</a>:</h4>
<p>Done.</p>



<a name="213686031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oliver <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686031">(Oct 18 2020 at 03:41)</a>:</h4>
<p>What about all the existing code and scripts using <code>R..C_B..P=1</code>?</p>



<a name="213686076"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686076" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686076">(Oct 18 2020 at 03:42)</a>:</h4>
<p>they'll still work</p>



<a name="213686081"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686081" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686081">(Oct 18 2020 at 03:42)</a>:</h4>
<p>the only thing that will break is people doing weird things like <code>RUSTC_BOOTSTRAP=0</code>, but I don't find that very compelling, especially this is not in any way stable</p>



<a name="213686096"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686096" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oliver <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686096">(Oct 18 2020 at 03:43)</a>:</h4>
<p>Codes and scripts using <code>R..C_B..P=0</code> are okay as well?</p>



<a name="213686126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686126">(Oct 18 2020 at 03:44)</a>:</h4>
<p>no, they'll break</p>



<a name="213686147"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686147" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686147">(Oct 18 2020 at 03:44)</a>:</h4>
<p>but =0 is weird and I don't know why you'd use it</p>



<a name="213686151"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686151" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oliver <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686151">(Oct 18 2020 at 03:44)</a>:</h4>
<p>Maybe only a few do</p>



<a name="213686155"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686155" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oliver <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686155">(Oct 18 2020 at 03:44)</a>:</h4>
<p>but there are some</p>



<a name="213686161"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686161" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686161">(Oct 18 2020 at 03:45)</a>:</h4>
<p><span aria-label="shrug" class="emoji emoji-1f937" role="img" title="shrug">:shrug:</span> if you're intentionally breaking rust's stability guarentees I'm not particularly inclined to be bug-for-bug compatible in helping you do it</p>



<a name="213686170"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/213686170" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oliver <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#213686170">(Oct 18 2020 at 03:45)</a>:</h4>
<p>It's not a problem since no one would ever do it</p>



<a name="227677327"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227677327" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227677327">(Feb 24 2021 at 21:37)</a>:</h4>
<p><span class="user-mention silent" data-user-id="120791">RalfJ</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212224948">said</a>:</p>
<blockquote>
<p><span class="user-mention silent" data-user-id="216206">lcnr</span> what is your stanza re: <code>RUSTC_BOOTSTRAP</code> in <code>build.rs</code>? keep it, kill it ASAP, or kill it when we have <code>RUSTC_BOOTSTRAP=crate</code>?</p>
</blockquote>
<p>FYI I ended up opening <a href="https://github.com/rust-lang/cargo/pull/9181">https://github.com/rust-lang/cargo/pull/9181</a>, which is the "kill it when we have <code>RUSTC_BOOTSTRAP=crate</code>" option</p>



<a name="227684044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227684044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227684044">(Feb 24 2021 at 22:16)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> Is that PR now hack-free? Would you consider it ready for merge?</p>



<a name="227684267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227684267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227684267">(Feb 24 2021 at 22:18)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> it's hack free but there have been a lot of changes since the last review,  I was hoping <span class="user-mention silent" data-user-id="120518">Eric Huss</span> or another team member could take a look</p>



<a name="227684403"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227684403" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227684403">(Feb 24 2021 at 22:19)</a>:</h4>
<p>Also there's a TODO floating around I forgot to comment on</p>



<a name="227684484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227684484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227684484">(Feb 24 2021 at 22:19)</a>:</h4>
<p>I looked it over, and I think the change to nightly_features_allowed seems reasonable to me.</p>



<a name="227685159"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227685159" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227685159">(Feb 24 2021 at 22:24)</a>:</h4>
<p>Side note, I wonder if any <a href="http://build.rs">build.rs</a> scripts attempt to set RUSTFLAGS or similar?</p>



<a name="227685714"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227685714" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227685714">(Feb 24 2021 at 22:28)</a>:</h4>
<p>I just responded to the TODO, and to one other open review comment.</p>



<a name="227686415"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227686415" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227686415">(Feb 24 2021 at 22:34)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/227685159">said</a>:</p>
<blockquote>
<p>Side note, I wonder if any <a href="http://build.rs">build.rs</a> scripts attempt to set RUSTFLAGS or similar?</p>
</blockquote>
<p>that seems fine though - I can imagine setting <code>-C link-arg</code> or something conditionally if you're linking a dependency statically or dynamically</p>



<a name="227688677"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227688677" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227688677">(Feb 24 2021 at 22:51)</a>:</h4>
<p><span class="user-mention silent" data-user-id="216206">lcnr</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/212225155">said</a>:</p>
<blockquote>
<p>though <code>RUSTC_BOOTSTRAP</code> has to always be used when bootstrapping the compiler afaik so always getting a warning there also doesn't seem great :/</p>
</blockquote>
<p>note that setting BOOTSTRAP at the top level is not the same as setting it in <a href="http://build.rs">build.rs</a>. AFAIK nothing sets it in <a href="http://build.rs">build.rs</a> in rust-lang/rust, it just assumes it's being built with an unstable toolchain.</p>



<a name="227688875"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227688875" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227688875">(Feb 24 2021 at 22:53)</a>:</h4>
<p>(If something is setting that in <a href="http://build.rs">build.rs</a>, I'd personally consider it a bug)</p>



<a name="227729948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227729948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227729948">(Feb 25 2021 at 07:47)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/227686415">said</a>:</p>
<blockquote>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/227685159">said</a>:</p>
<blockquote>
<p>Side note, I wonder if any <a href="http://build.rs">build.rs</a> scripts attempt to set RUSTFLAGS or similar?</p>
</blockquote>
<p>that seems fine though - I can imagine setting <code>-C link-arg</code> or something conditionally if you're linking a dependency statically or dynamically</p>
</blockquote>
<p>Do you actually expect that that's used? You said "I imagine we'd break half the ecosystem if we prevented that", but do you really think half the ecosystem is setting those from <a href="http://build.rs">build.rs</a>?</p>



<a name="227730386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227730386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227730386">(Feb 25 2021 at 07:53)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> I just posted one more followup comment on the PR, regarding one other place that you changed to pass down config that you now shouldn't need to change anymore.</p>



<a name="227771993"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227771993" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227771993">(Feb 25 2021 at 14:09)</a>:</h4>
<p><span class="user-mention silent" data-user-id="239881">Josh Triplett</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350/near/227729948">said</a>:</p>
<blockquote>
<p>do you really think half the ecosystem is setting those from <a href="http://build.rs">build.rs</a>?</p>
</blockquote>
<div class="codehilite"><pre><span></span><code>$ rg rustc-env $CARGO_HOME/registry | tee env.txt
</code></pre></div>
<p><a href="/user_uploads/4715/Nd89JD2SdT-mIfaj1lHCrvkv/env.txt">env.txt</a><br>
Surprisingly I don't see <code>RUSTFLAGS</code> anywhere, although this is just what I happen to have cached locally, not the whole index.</p>
<p>I guess my real concern is I don't see any reason to forbid it. It doesn't break anything and it just makes life harder for the authors of build scripts.</p>



<a name="227801902"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227801902" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227801902">(Feb 25 2021 at 17:09)</a>:</h4>
<p>I can think of several reasons. I wouldn't want a crate changing my target features, for instance.</p>



<a name="227802022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227802022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227802022">(Feb 25 2021 at 17:10)</a>:</h4>
<p>Or passing -l rather than telling Cargo to link a library.</p>



<a name="227803706"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227803706" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227803706">(Feb 25 2021 at 17:21)</a>:</h4>
<p>Or changing optimization flags.</p>



<a name="227803832"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227803832" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227803832">(Feb 25 2021 at 17:22)</a>:</h4>
<p>I really can't think of any legitimate reason why a build script should ever be able to change RUSTFLAGS.</p>



<a name="227806109"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227806109" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> hyd-dev <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227806109">(Feb 25 2021 at 17:36)</a>:</h4>
<p>Does setting <code>RUSTFLAGS</code> from build scripts have any effect?<br>
It seems that <code>rustc</code> doesn't respect that environment variable:</p>
<div class="codehilite" data-code-language="Bash Session"><pre><span></span><code><span class="gp">$</span> <span class="nv">RUSTFLAGS</span><span class="o">=</span>invalid rustc - <span class="o">&lt;&lt;&lt;</span><span class="s1">'fn main() {}'</span>
<span class="gp">$</span> <span class="nb">echo</span> <span class="nv">$?</span>
<span class="go">0</span>
</code></pre></div>
<p>And it's <code>rustc-env</code>, so Cargo probably doesn't read it?</p>



<a name="227806659"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227806659" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227806659">(Feb 25 2021 at 17:40)</a>:</h4>
<p>Nope. Doesn't have any effect.</p>



<a name="227823579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Require%20users%20to%20confirm%20they%20know%20RUSTC_%E2%80%A6%20compiler-team%23350/near/227823579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Require.20users.20to.20confirm.20they.20know.20RUSTC_.E2.80.A6.20compiler-team.23350.html#227823579">(Feb 25 2021 at 19:30)</a>:</h4>
<p>Ah, even better.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>